草庐IT

php - 找不到类 MongoDB

全部标签

mongodb - 在 Go 中模拟 MongoDB 响应

我正在从MongoDB获取文档并将其传递给函数transform,例如vardocmap[string]interface{}err:=collection.FindOne(context.TODO(),filter).Decode(&doc)result:=transform(doc)我想为transform编写单元测试,但我不确定如何模拟来自MongoDB的响应。理想情况下,我想设置这样的东西:funcTestTransform(t*testing.T){byt:=[]byte(`{"hello":"world","message":"apple"}`)vardocmap[stri

mongodb - 使用 mongo-go-driver 创建动态过滤器

我想用mongo-go-driver创建一个动态过滤器。例如,我有这个文档:{"_id":"5d1231380a2a2b39a99c3ed1"},"name":"flower.png","colors":["#ffffff","#212121","#999999","#dbdbdb","#ff5252"],},{"_id":"5d1231380a2a2b39a99c3ed0"},"name":"imageofgo.jpg","colors":["#dedede","#dfdfdf","#dddddd","#e0e0e0","#e2e2e2"],},{"_id":"5d1231380a2

mongodb - UpdateOne 因 E11000 重复键错误而失败

我正在尝试从go更新MongoDB的文档。ctx,cancel:=context.WithTimeout(context.Background(),10*time.Second)defercancel()c,_:=mongo.Connect(ctx,options.Client().ApplyURI("mongodb://localhost:27017"))col:=c.Database("epgrec").Collection("rec")filter:=bson.M{"_id":r.Mid}update:=bson.M{"$set":bson.M{"rid":r.Rid,"chan

Mongodb-go-adapter FindOne 吐出 { } 和 { 0}

一般FindOnefmt.printresult{}。我需要输出值。我正在使用来自文档的几乎标准设置:https://docs.mongodb.com/ecosystem/drivers/go/我在创建查询时遇到问题,因为大多数示例都是不同的;我试图遵循这种模式:https://github.com/ruanbekker/code-examples/blob/master/mongodb/golang/examples.go引用对象:_id:5d1a8829cf5042c071458db6name:"!hello"Value:"World%cend"Counter:0代码示例:type

php - 解密在 GOLang 上用 PHP 解密的 AES-CBC-256 Mcrypt_RIJNDAEL

我尝试在go中重写一些在php5.6(CodeIgniter)中编写的旧代码,但我正在忙于解密。我设法从php解码MCRYPT_RIJNDAEL_128去,其中iv大小是16个字符,但我不能在256上这样做-iv是32。我不想使用go_mcrypt因为它对libcryptheader很严格,所以我试过了在CBC模式下使用goclassicencryptlibsAES密码,但在256上它提示IV长度...phpIV有32个字符而不是预期的16个字符..php部分运行良好...private$CIPHER_KEY="12345678901234567890123456789012";pri

mongodb - 无法从 MongoDB 获取完整文档

我有一个MongoDB集合,其中包含这种形式的项目{"_id":"base_519","Name":"Name","Position":1000,"Type":"Base","Visible":true,"Preview":"/preview/preview.jpg","IsBase":true,"Product":"product-2","Categories":["category_1"],"ObjData":[{"_t":"ObjDataNormal","CanBuy":false,"Foreground":"/fg/foreground.gif","Background":"n

mongodb - go get mongo-go-driver 在 Dockerfile 中崩溃

我的Go服务有点问题。我是Go的新手,我只想对一个连接到mongodb实例的小服务进行docker化。我的代码在本地运行良好。所以这是我的Dockerfile:#buildstageFROMgolang:alpineASbuild-envRUNapkadd--no-cachegitADD..RUNgoget-v-ugo.mongodb.org/mongo-driverRUNgobuild-omongotest#finalstageFROMalpineWORKDIR/appCOPY--from=build-env./go/mongotest.RUNapkupdate&&apkaddca-

mongodb - 如何解码 Aggregate() 的返回值

我正在尝试在MongoDB中执行查询,就像SQL中的分组依据一样。所以我使用Aggregate()API来查找所有唯一的_id(MarketType+Symbol)。并且Aggregate()运行成功,但是当我解码返回值时,我什么也没得到。Aggregate()返回类型和Find()是一样的,我在Find()有用的时候也是这样解码的。为什么当我Aggregate()时它不能工作。typeMarketSymbolstruct{MarketTypestring`json:"Market,omitempty"bson:"MarketType"`Symbolstring`json:"Symbo

mongodb - 在 mongo-go-driver 中将 json 参数转换为 bson for UpdateOne

我正在尝试使用mongo-go-driver库的UpdateOne但此方法采用bson文档。我给它一个接口(interface)参数(json)。我的问题是找到将我的json请求解析为bson以动态更新字段的最佳方法。谢谢。func(sStore)Update(id`entercodehere`bson.D,dinterface{})(*mongo.UpdateResult,int32,string){upd:=bson.D{{"$inc",bson.D{d,},},}c,ctx,_:=getCollection(s.conn,s.dbName,s.collectionName)res

go - Travis CI 找不到 GitHub 部署的发布文件

尽管在SO上尝试了其他答案,但我无法让TravisCI找到我的发布文件夹进行部署。我有一个像这样运行发布的Makefile:release:mkdir-preleaseenvGOOS=linuxGOARCH=amd64$(GOBUILD)-orelease/$(CLI)-$(VERSION)-linux-amd64$(BINARY_NAME_CLI)envGOOS=darwinGOARCH=amd64$(GOBUILD)-orelease/$(CLI)-$(VERSION)-darwin-amd64$(BINARY_NAME_CLI)envGOOS=windowsGOARCH=amd6